Solving your SASE and Zero Trust transformation challenges starts with Netskope at RSA. Learn more.

閉める
閉める
  • Netskopeが選ばれる理由 シェブロン

    ネットワークとセキュリティの連携方法を変える。

  • 導入企業 シェブロン

    Netskope は世界中で 3,000 を超える顧客にサービスを提供しており、その中にはフォーチュン 100 企業の 25 以上が含まれます

  • パートナー シェブロン

    私たちはセキュリティリーダーと提携して、クラウドへの旅を保護します。

実行能力とビジョンの完全性において
最上位の評価

ネットスコープが2024年Gartner®社のセキュリティ・サービス・エッジ(SSE)のマジック・クアドラントで3年連続リーダーの1社として評価された理由をご覧ください。

レポートを読む
Netskope Named a Leader in the 2024 Gartner® Magic Quadrant™ for Security Service Edge graphic for menu
私たちは、お客様が何にでも備えることができるように支援します

お客様について
窓の外を見て微笑むメガネをかけた女性
Netskopeのパートナー中心の市場開拓戦略により、パートナーは企業のセキュリティを変革しながら、成長と収益性を最大化できます。

Netskope パートナーについて学ぶ
色々な若い専門家が集う笑顔のグループ
明日に向けたネットワーク

サポートするアプリケーションとユーザー向けに設計された、より高速で、より安全で、回復力のあるネットワークへの道を計画します。

ホワイトペーパーはこちら
明日に向けたネットワーク
Netskope One プラットフォームの紹介

Netskope One は、SASE とゼロトラスト変革を可能にする統合型セキュリティおよびネットワーキング サービスを提供するクラウドネイティブ プラットフォームです。

Netskope One について学ぶ
青い照明の抽象画
セキュアアクセスサービスエッジ(SASE)アーキテクチャの採用

Netskope NewEdgeは、世界最大かつ最高のパフォーマンスのセキュリティプライベートクラウドであり、比類のないサービスカバレッジ、パフォーマンス、および回復力を顧客に提供します。

NewEdgeの詳細
NewEdge
Netskope Cloud Exchange

Netskope Cloud Exchange (CE) は、セキュリティポスチャに対する投資を活用するための強力な統合ツールを提供します。

Cloud Exchangeについて学ぶ
Netskopeの動画
  • セキュリティサービスエッジ製品 シェブロン

    高度なクラウド対応の脅威から保護し、あらゆるベクトルにわたってデータを保護

  • Borderless SD-WAN シェブロン

    すべてのリモートユーザー、デバイス、サイト、クラウドへ安全で高性能なアクセスを提供

  • Secure Access Service Edge シェブロン

    Netskope One SASE は、クラウドネイティブで完全に統合された単一ベンダーの SASE ソリューションを提供します。

未来のプラットフォームはNetskopeです

インテリジェントセキュリティサービスエッジ(SSE)、クラウドアクセスセキュリティブローカー(CASB)、クラウドファイアウォール、セキュアウェブゲートウェイ(SWG)、およびZTNAのプライベートアクセスは、単一のソリューションにネイティブに組み込まれており、セキュアアクセスサービスエッジ(SASE)アーキテクチャへの道のりですべてのビジネスを支援します。

製品概要はこちら
Netskopeの動画
Next Gen SASE Branch はハイブリッドである:接続、保護、自動化

Netskope Next Gen SASE Branchは、コンテキストアウェアSASEファブリック、ゼロトラストハイブリッドセキュリティ、 SkopeAI-Powered Cloud Orchestrator を統合クラウド製品に統合し、ボーダレスエンタープライズ向けに完全に最新化されたブランチエクスペリエンスを実現します。

Next Gen SASE Branchの詳細はこちら
オープンスペースオフィスの様子
SASEアーキテクチャの設計 For Dummies

SASE設計について網羅した電子書籍を無償でダウンロード

電子書籍を入手する
最小の遅延と高い信頼性を備えた、市場をリードするクラウドセキュリティサービスに移行します。

NewEdgeの詳細
山腹のスイッチバックを通るライトアップされた高速道路
アプリケーションのアクセス制御、リアルタイムのユーザーコーチング、クラス最高のデータ保護により、生成型AIアプリケーションを安全に使用できるようにします。

生成AIの使用を保護する方法を学ぶ
ChatGPTと生成AIを安全に有効にする
SSEおよびSASE展開のためのゼロトラストソリューション

ゼロトラストについて学ぶ
大海原を走るボート
NetskopeがFedRAMPの高認証を達成

政府機関の変革を加速するには、Netskope GovCloud を選択してください。

Netskope GovCloud について学ぶ
Netskope GovCloud
  • リソース シェブロン

    クラウドへ安全に移行する上でNetskopeがどのように役立つかについての詳細は、以下をご覧ください。

  • ブログ シェブロン

    Netskope がセキュリティ サービス エッジ (SSE) を通じてセキュリティとネットワークの変革を実現する方法を学びます

  • イベント&ワークショップ シェブロン

    最新のセキュリティトレンドを先取りし、仲間とつながりましょう。

  • 定義されたセキュリティ シェブロン

    サイバーセキュリティ百科事典、知っておくべきすべてのこと

「セキュリティビジョナリー」ポッドキャスト

リモートワークが進む中でのイノベーションの推進
このエピソードでは、ホストのMax Haveyがリモートワークとイノベーションの世界を掘り下げます。

ポッドキャストを再生する
リモートワークが進む中でのイノベーションの推進
最新のブログ

Netskope がセキュリティ サービス エッジ (SSE) 機能を通じてゼロ トラストと SASE の導入をどのように実現できるかをご覧ください。

ブログを読む
日の出と曇り空
SASE Week 2023年:SASEの旅が今始まります!

第4回 SASE Weekのリプレイセッション。

セッションの詳細
SASE Week 2023
セキュリティサービスエッジとは

SASEのセキュリティ面、ネットワークとクラウドでの保護の未来を探ります。

セキュリティサービスエッジの詳細
4方向ラウンドアバウト
  • 会社概要 シェブロン

    クラウド、データ、ネットワークセキュリティの課題に対して一歩先を行くサポートを提供

  • リーダーシップ シェブロン

    Netskopeの経営陣はお客様を成功に導くために全力を尽くしています。

  • カスタマーソリューション シェブロン

    お客様の成功のために、Netskopeはあらゆるステップを支援いたします。

  • トレーニングと認定 シェブロン

    Netskopeのトレーニングで、クラウドセキュリティのスキルを学ぶ

データセキュリティによる持続可能性のサポート

Netskope は、持続可能性における民間企業の役割についての認識を高めることを目的としたイニシアチブである「ビジョン2045」に参加できることを誇りに思っています。

詳しくはこちら
データセキュリティによる持続可能性のサポート
思想家、建築家、夢想家、革新者。 一緒に、私たちはお客様がデータと人々を保護するのを助けるために最先端のクラウドセキュリティソリューションを提供します。

当社のチーム紹介
雪山を登るハイカーのグループ
Netskopeの有能で経験豊富なプロフェッショナルサービスチームは、実装を成功させるための規範的なアプローチを提供します。

プロフェッショナルサービスについて学ぶ
Netskopeプロフェッショナルサービス
Netskopeトレーニングで、デジタルトランスフォーメーションの旅を保護し、クラウド、ウェブ、プライベートアプリケーションを最大限に活用してください。

トレーニングと認定資格について学ぶ
働く若い専門家のグループ

A Real-World Look at AWS Best Practices: IAM User Accounts

May 06 2021

Introduction

Best practices for securing an AWS environment have been well-documented and generally accepted, such as AWS’s guidance. However, organizations may still find it challenging on how to begin applying this guidance to their specific environments.

  • Which controls should be applied out-of-the-box vs. customized?
  • What pitfalls exist in implementing the various controls or checks?
  • How do you prioritize remediation of the “sea of red” violations?

In this blog series, we’ll analyze anonymized data from Netskope customers that include security settings of 650,000 entities from 1,143 AWS accounts across several hundred organizations. We’ll look at the configuration from the perspective of the best practices, see what’s commonly occurring in the real world and:

  • Discuss specific risk areas that should be prioritized
  • Identify underlying root causes and potential pitfalls
  • Focus on practical guidance for applying the Benchmark to your specific environment

This blog post continues looking at real-world data for common IAM security controls for regular users. Based on the Netskope dataset analyzed, we will highlight six opportunities to improve security by making simple IAM changes:

  1. MFA is not consistently enforced with regular IAM User accounts, with 6% of users without MFA.
  1. Many IAM User accounts are unused and should be disabled. 40% of access keys are more than a year old.
  1. 11% of users had access keys set up at the time of user account setup, which can lead to unnecessary or unused access keys that can be compromised.
  1. 6.7% of IAM users have two access keys, leading to unnecessary access keys that can be compromised.
  1. 7,580 (60.8%) IAM Users have access keys that have not been rotated in 90d
  1. 6,211 (50%) IAM User accounts have not been used in the last 90d

IAM Users past

“I told you these were shadows of the things that have been. That they are what they are, do not blame me!”

— The Ghost, Christmas Carol by Charles Dickens

These five best practices relating to regular IAM Users were analyzed against 12,478 IAM Users in 1,143 accounts:

#Best Practice# Violations%
1Ensure multi-factor authentication (MFA) is enabled for all IAM users that have a console password7736.2
2Do not set up access keys during initial user setup for all IAM users that have a console password1,33110.7
3Ensure there is only one active access key available for any single IAM user8306.7
4Ensure access keys are rotated every 90 days or less7,58060.8
5Ensure credentials unused for 90 days or greater are disabled6,21149.8

1. MFA: IAM Users

Background: Multi-factor authentication is also recommended for regular IAM Users who have a Console login enabled.

Data: 773 (6.2%) IAM User accounts do not have MFA enabled. 

Analysis: We again need to look at the effective MFA policy for regular IAM Users, including SCP policies. As SCP policy data was not available in this dataset, we instead will focus on standalone AWS accounts: 178 accounts are not part of an AWS organization and do not have MFA enforced by an SCP. In these 178 accounts, 773 (6.2%) IAM User accounts definitively do not have MFA enabled. 

Controls:

  • Detection/Audit
    • Detecting whether MFA is enabled or not can be done by checking the mfa_active field in the IAM credential report or via SCP settings at the AWS Organization/OU/root level:
      aws organizations list-policies|describe-policies
    • Using the AWS Config rule:  mfa-enabled-for-iam-console-access will also detect whether MFA is enabled for IAM Users’ Console access.
  • Preventing/Auditing
    • Best practices recommend MFA be enabled for all IAM Users. For multiple accounts, it is easier to apply MFA with a Service Control Policy within an AWS Organization or if using a federated identity system, to set MFA policy there.

2. No initial access key setup

Background: Best practices recommend not provisioning access keys during initial user setup, and instead enforce more strict requests via ticketing to minimize unused keys.

Data: Based on the creation time of the user account and the access key, 1331 or 10.7% of the IAM user accounts were set up with an access key by the customer at the same time (during provisioning of the user account).

Analysis: Setting up access keys at the same time as a user account, rather than when needed, leads to a larger attack surface of access keys that can remain unused and lead to compromise. We define “at the same time” if the user creation time and access key creation time are within 10 seconds of each other.

Controls:

  • Detection/Audit
    • Detecting access key provisioning at the time of user provisioning can be done by auditing the IAM User credential report, checking on the user_creation_time against the last_rotation_time of both access keys if they are enabled.
    • If they exist, the users can be notified and their access key(s) could be disabled to enforce a separate change request process to clarify requirements for access keys.
  • Prevention/Mitigation
    • If you choose to enforce this, a process for opening up tickets or change requests to issue access keys can be implemented.

3. One access key

Background: For normal use, it is recommended to have only one access key for a given IAM User at a time, with the exception being during the key rotation period, when two active keys may exist for a short period of time. Two permanent access keys are unnecessary and increase the chance of compromised keys.

Data: Out of 12,478 total IAM Users in this dataset, 830 (6.7%) have two active access keys. 

Analysis: Since a valid scenario for having two keys is during a key rotation period, we look further into how long the keys have been in existence based on their last rotated time. Here is the breakdown of the 12,478 IAM Users in this dataset by age of the keys, normalized against the number of IAM Users that existed in that timeframe:

# IAM
Users
# IAM Users with two access key%
Total12,4788306.7%
>30 days old12,1007996.6%
>90 days old11,3957206.3%
>365 days old8,0014455.6%

Overall, between 5-6% of IAM Users in this dataset have two access keys regardless of age. 31 out of 830 users have access keys that are newer than 30d and this may be due to key rotation, but the majority of users appear to have two permanent access keys e.g. 8,001 (5.6%) IAM Users have two access keys over a year old.

Controls:

  • Detection/Audit
    • Detecting two access keys can be done by auditing the IAM User credential report on a regular basis, incorporating last_key_rotation time to filter out potential false positives due to key rotation.
  • Prevention/Mitigation
    • Remediating the issue can be done at the same time by generating appropriate alerts and/or disabling one of the access keys.

4. Access key rotation

Background: Regular key rotation is recommended in order to mitigate the effects of compromised credentials, especially in the case of access keys where the key secrets may be stored externally on various client endpoints.

Data: Out of the 12,478 access keys in this dataset, 7,580 (60.8%) IAM Users have access keys that have not been rotated in 90d.

Of these users, 4,931 (40%) IAM Users have access keys that are over a year old, 245 IAM Users have access keys over five years old, with the oldest key being from August 2011.

Analysis: Clearly, at some point, the lack of key rotation equates to “never rotates.” The percentage of users with access keys over 90d is 60.8% and with keys over year old is 40%. The older age of access keys leads to more exposure once a key is compromised as the time window for use is that much longer. When looking at year-long timeframes, it is likely that the keys are not under any key rotation policy (which is typically recommended as 90d or less).

Controls:

  • Detection/Audit
    • Auditing of key access age can be done by checking last_rotated_time in the IAM User Credential report or by using the AWS Config rule: access-keys-rotated
    • It is useful to break down the access key age into tiers to prioritize risk and address underlying causes more effectively. This can reduce false positives due to key rotation, identify “permanent” keys (and users), and help affect change in policies to minimize future problems.
  • Prevention/Mitigation
    • To remediate the situation, key rotations should be enforced with communication and coordination to all involved users.

5. Unused IAM accounts

Background: Unused accounts significantly increase the risk for compromised accounts and increase the administrative overhead for securing the environment.

Data: Out of a total of 12,478 IAM User accounts in this dataset, 6,211 (50%) IAM User accounts have not been used in the last 90d (i.e. no Console login and no API key use).

Of these user accounts, 3,549 (28.4%) user accounts have not been used in the past year, and the oldest, unused IAM User Console account was last used in March 2014, and the oldest, unused active access key was last used in April 2015.

Analysis: Half (50%) of IAM User accounts are not used regularly (last 90d), and over 28% have not been used in 365d. The latter category should be the immediate priority for remediation as it reduces account risk proportionally. Best practices would recommend culling (disabling) user accounts that have been unused for 90d or more.

Controls:

  • Detection/Audit
    • Regular auditing of unused access keys or console logins should be done, and those keys and user accounts should be disabled. 
    • Unused accounts can be done by auditing the IAM credential report. Care should be taken to perform the check properly in case the access key or console login has never been used. In these cases, the password_last_used or access_key_last_used_date will not be set, and the password_last_changed or access_key_last_rotated fields must be used from the credential report.
    • Using the AWS Config Rule: iam-user-unused-credentials-check will also identify unused credentials.
  • Prevention/Mitigation
    • Unnecessary creation of IAM User accounts should be avoided in the first place. In some cases, it may make sense to use roles (AssumeRole), which use temporary credentials and avoid creation of a separate IAM User account.

Conclusion

Many best practices have been codified but many AWS environments lag behind in implementing these best practices. Remediating the issues is straightforward for many of the security settings, and there exists specific prescriptive guidance on auditing and remediating your configurations in these areas, which can result in a large reduction in risk.

Here are some basic measures that can be done to address some of the common risk areas due to IAM configuration in your AWS environment:

  1. MFA should be enabled on regular IAM User accounts using account-level policies or Service Control Policies and enforced using resource or IAM policies or SCPs.
  1. Audit and disable unused IAM User accounts and access keys to reduce credential attack surface.
  1. Access keys should not be set up during user account provisioning. Instead utilize an explicit request on the need for access keys.
  1. IAM Users should only have at most one access key. Disable unnecessary access keys.
  1. Rotate access keys within 90 days.
  1. Disable any IAM User accounts that have been unused for over 90 days.

In upcoming blogs, we’ll continue to explore other best practices and how individual organizations can apply these best practices specifically to their environment.

Additionally, Netskope’s Public Cloud Security platform also can automate configuration checking of your AWS environment, implementing both compliance standards, as well as custom configuration checks.

Dataset and Methodology

Time Period: Data was sampled/analyzed from January 24, 2021. 

Source: The analysis presented in this blog post is based on anonymized usage data collected by the Netskope Security Cloud platform relating to a subset of Netskope customers with prior authorization.

Data Scope: The data included 1143 AWS accounts and several hundred organizations. 

The data was composed of configuration settings across tens of thousands of AWS entities including IAM Users, IAM policies, password policy, buckets, databases, CloudTrail logs, compute instances, and security groups.

Logic: The analysis followed the logic of core root account security checks found in best practices regarding AWS configuration settings with a few adjustments for the dataset and methodology. Some best practices might define “recent usage” for the root account as a last logged in time occurring within the past 24 hours to determine whether the root account has been used recently. Because this dataset comes from a point-in-time snapshot, this was changed to within the past 7 days prior to the audit date.

author image
Jenko Hwong
Jenko has 15+ years of experience in research, product management, and engineering in cloud security, AV/AS, routers/appliances, threat intel, Windows security, vulnerability scanning and compliance. At Netskope, he researches new cloud attacks.

Stay informed!

Subscribe for the latest from the Netskope Blog